#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define S sizeof(N)

typedef struct
{
    char n[21];
    int s;
}N;

int c(const void*a,const void*b)
{
    N *x=(N*)a,*y=(N*)b;
    if(x->s==y->s) return strcmp(x->n,y->n);
    else return y->s-x->s;
}

int main()
{
    int n,m,g,i,j,t[10],u,v;
    N *r;
    while(scanf("%d",&n),n)
    {
        scanf("%d%d",&m,&g);
        r=(N*)malloc(n*S);
        for(i=0;i<m;++i) scanf("%d",t+i);
        for(j=i=0;i<n;++i)
        {
            scanf("%s%d",r[j].n,&m);
            u=0;
            while(m--)
            {
                scanf("%d",&v);u+=t[v-1];
            }
            if(u>=g) r[j++].s=u;
        }
        qsort(r,j,S,c);
        printf("%d\n",j);
        for(i=0;i<j;++i)
        printf("%s %d\n",r[i].n,r[i].s);
        free(r);
    }
}

